#ifndef __SHELL_H
#define __SHELL_H

#define PROMPT          '$'
#define MAXLINEAS       20
#define MAXLONGITUD     256
#define MAXNOMBRE       512
#define MAXDESCRIPCION  512
#define ERROR			-1
#define MAX_ARGC 7
#define MAX_ARG 40

int     shell(int, char **);
void    ejecutaComando(char *cmd,int argc,char argumentos[MAX_ARGC][MAX_ARG], int);
void    imprimePrompt(void);
int     imprimeAyuda(int, char **);
void    limpiaLinea(void);
int     limpiaPantalla(int, char **);
int     fortune(int, char **);
int     cpuinfo(int, char **);
int     mallocInf(int, char **);
int     kill(int, char **);
int     divideByZero(int, char **);
int     renice(int, char **);
int     top(int , char** );
int     random(int tope,int *ignorar);
int     colgado(int argc, char **argv);
int     shmemRead(int argc, char **argv);
int     shmemWrite(int argc, char **argv);

typedef struct {
    char nombre[MAXNOMBRE];
    char descripcion[MAXDESCRIPCION];
    int (*funcion)(int argc, char **argv);
} comando;

typedef struct{
	char nombre[MAXNOMBRE];
	int	 valor;
}eleccion;

#endif
